package com.nuedu.corejava.ch8;

public class Student {
	private String name;
	//计算机课程的成绩
	private double computer;
	public Student() {
		super();
	}
	public Student(String name, double computer) {
		super();
		this.name = name;
		this.computer = computer;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getComputer() {
		return computer;
	}
	public void setComputer(double computer) {
		this.computer = computer;
	}
	/**
	 * 显示学生信息的方法
	 * @throws Exception 
	 */
	public void showInfo() throws CreException {//在方法内部如果有异常抛出，则需要在方法定义时，进行异常的声明，声明的异常必须是抛出的异常或者抛出异常的父类
		if (computer<0) {
			throw new CreException("课程成绩不能为负数");//在方法编写时可以使用throw抛出一个异常对象，如果是抛出一个检查异常，则需要进行处理；
		}
		System.out.println("姓名："+name+"成绩："+computer);
		
	}
	public void showInfo2() throws RuntimeException,IllegalAccessException{//在方法内部如果有异常抛出，则需要在方法定义时，进行异常的声明，声明的异常必须是抛出的异常或者抛出异常的父类
		if (computer<0) {
			throw new RuntimeException("课程成绩不能为负数");//在方法编写时可以使用throw抛出一个异常对象，如果是抛出一个检查异常，则需要进行处理；
		}
		if (computer>100) {
			throw new IllegalAccessException("成绩不能高于100");
		}
		System.out.println("姓名："+name+"成绩："+computer);
	}
	public static void main(String[] args) {
		Student student = new Student("Jack",-10);
		try {
			student.showInfo();
		} catch (Exception e) {
			e.printStackTrace();
		}
		try {
			student.showInfo2();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (RuntimeException e) {
			e.printStackTrace();
		}
	}

}
